home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 26.zip / BS1 part 26 / Aztec C v5.2a disk 4.adf / 204inc_i.lzh / intuition / preferences.i < prev    next >
Text File  |  1991-03-14  |  8KB  |  264 lines

  1.     IFND  INTUITION_PREFERENCES_I
  2. INTUITION_PREFERENCES_I    SET  1
  3. **
  4. **    $Filename: intuition/preferences.i $
  5. **    $Release: 2.04 $
  6. **    $Revision: 36.5 $
  7. **    $Date: 90/11/02 $
  8. **
  9. **    Structure definition for old-style preferences
  10. **
  11. **    (C) Copyright 1985,1986,1987,1988,1989,1990 Commodore-Amiga, Inc.
  12. **        All Rights Reserved
  13. **
  14.  
  15.     IFND EXEC_TYPES_I
  16.     INCLUDE "exec/types.i"
  17.     ENDC
  18.  
  19.     IFND    DEVICES_TIMER_I
  20.     INCLUDE    "devices/timer.i"
  21.     ENDC
  22.  
  23. ; ========================================================================
  24. ; === Preferences ========================================================
  25. ; ========================================================================
  26.  
  27. ; these are the definitions for the printer configurations
  28. FILENAME_SIZE EQU    30    ; Filename size
  29.  
  30. POINTERSIZE    EQU    (1+16+1)*2    ; Size of Pointer data buffer
  31.  
  32. ; These defines are for the default font size.    These actually describe the
  33. ; height of the defaults fonts.  The default font type is the topaz
  34. ; font, which is a fixed width font that can be used in either
  35. ; eighty-column or sixty-column mode.  The Preferences structure reflects
  36. ; which is currently selected by the value found in the variable FontSize,
  37. ; which may have either of the values defined below.  These values actually
  38. ; are used to select the height of the default font.  By changing the
  39. ; height, the resolution of the font changes as well.
  40. TOPAZ_EIGHTY    EQU    8
  41. TOPAZ_SIXTY    EQU    9
  42.  
  43. ; ------------------------------------------------------------------------
  44.  STRUCTURE Preferences,0
  45.  
  46.     ; the default font height
  47.     BYTE pf_FontHeight        ; height for system default font
  48.  
  49.     ; constant describing what's hooked up to the port
  50.     BYTE pf_PrinterPort    ; printer port connection
  51.  
  52.     ; the baud rate of the port
  53.     WORD pf_BaudRate        ; baud rate for the serial port
  54.     
  55.     ; various timing rates
  56.     STRUCT pf_KeyRptSpeed,TV_SIZE ; repeat speed for keyboard
  57.     STRUCT pf_KeyRptDelay,TV_SIZE ; Delay before keys repeat
  58.     STRUCT pf_DoubleClick,TV_SIZE ; Interval allowed between clicks
  59.  
  60.     ; Intuition Pointer data
  61.     STRUCT pf_PointerMatrix,POINTERSIZE*2 ; Definition of pointer sprite
  62.     BYTE pf_XOffset        ; X-Offset for active 'bit'
  63.     BYTE pf_YOffset        ; Y-Offset for active 'bit'
  64.     WORD pf_color17        ;********************************
  65.     WORD pf_color18        ; Colours for sprite pointer
  66.     WORD pf_color19        ;********************************
  67.     WORD pf_PointerTicks    ; Sensitivity of the pointer    
  68.  
  69.     ; Workbench Screen colors
  70.     WORD pf_color0        ;********************************
  71.     WORD pf_color1        ;  Standard default colours
  72.     WORD pf_color2        ;   Used in the Workbench
  73.     WORD pf_color3        ;********************************
  74.  
  75.     ; positioning data for the Intuition View
  76.     BYTE pf_ViewXOffset        ; Offset for top lefthand corner
  77.     BYTE pf_ViewYOffset        ; X and Y dimensions
  78.     WORD pf_ViewInitX        ; View initial offsets at startup
  79.     WORD pf_ViewInitY        ; View initial offsets at startup
  80.  
  81.     BOOL EnableCLI        ; CLI availability switch
  82.  
  83.     ; printer configurations
  84.     WORD pf_PrinterType        ; printer type
  85.     STRUCT pf_PrinterFilename,FILENAME_SIZE ; file for printer
  86.  
  87.     ; print format and quality configurations
  88.     WORD pf_PrintPitch         ; print pitch
  89.     WORD pf_PrintQuality    ; print quality
  90.     WORD pf_PrintSpacing    ; number of lines per inch
  91.     WORD pf_PrintLeftMargin    ; left margin in characters
  92.     WORD pf_PrintRightMargin    ; right margin in characters
  93.     WORD pf_PrintImage        ; positive or negative
  94.     WORD pf_PrintAspect        ; horizontal or vertical
  95.     WORD pf_PrintShade        ; b&w, half-tone, or color
  96.     WORD pf_PrintThreshold    ; darkness ctrl for b/w dumps
  97.  
  98.  
  99.     ; print paper description
  100.     WORD pf_PaperSize        ; paper size
  101.     WORD pf_PaperLength        ; paper length in lines
  102.     WORD pf_PaperType        ; continuous or single sheet
  103.  
  104.     ; Serial device settings: These are six nibble-fields in three bytes
  105.     ; (these look a little strange so the defaults will map out to zero)
  106.     BYTE pf_SerRWBits           ; upper nibble = (8-number of read bits)
  107.                                 ; lower nibble = (8-number of write bits)
  108.     BYTE pf_SerStopBuf          ; upper nibble = (number of stop bits - 1)
  109.                                 ; lower nibble = (table value for BufSize)
  110.     BYTE pf_SerParShk           ; upper nibble = (value for Parity setting)
  111.                                 ; lower nibble = (value for Handshake mode)
  112.  
  113.     BYTE pf_LaceWB        ; if workbench is to be interlaced
  114.  
  115.     STRUCT pf_WorkName,FILENAME_SIZE ; temp file for printer
  116.  
  117.     BYTE    pf_RowSizeChange    ; 
  118.     BYTE    pf_ColumnSizeChange ;
  119.  
  120.     UWORD   pf_PrintFlags    ; user preference flags
  121.     WORD    pf_PrintMaxWidth    ; max width of printed picture in 10ths/inch
  122.     UWORD   pf_PrintMaxHeight   ; max height of printed picture in 10ths/inch 
  123.     UBYTE   pf_PrintDensity     ; print density
  124.     UBYTE   pf_PrintXOffset     ; offset of printed picture in 10ths/inch
  125.  
  126.     UWORD   pf_wb_Width        ; override default workbench width
  127.     UWORD   pf_wb_Height    ; override default workbench height
  128.     UBYTE   pf_wb_Depth        ; override default workbench depth
  129.  
  130.     UBYTE   pf_ext_size        ; extension information -- do not touch!
  131.                 ; extension size in blocks of 64 bytes
  132.  
  133.     LABEL pf_SIZEOF
  134.  
  135.  
  136. ; === Preferences definitions ===========================================
  137.  
  138. ; Workbench Interlace (use one bit)
  139. LACEWB        EQU    $01
  140.  
  141. ; PrinterPort
  142. PARALLEL_PRINTER EQU    $00
  143. SERIAL_PRINTER    EQU    $01
  144.  
  145. ; BaudRate
  146. BAUD_110    EQU    $00
  147. BAUD_300    EQU    $01
  148. BAUD_1200    EQU    $02
  149. BAUD_2400    EQU    $03
  150. BAUD_4800    EQU    $04
  151. BAUD_9600    EQU    $05
  152. BAUD_19200    EQU    $06
  153. BAUD_MIDI    EQU    $07
  154.  
  155. ; PaperType
  156. FANFOLD     EQU    $00
  157. SINGLE        EQU    $80
  158.  
  159. ; PrintPitch
  160. PICA        EQU    $000
  161. ELITE        EQU    $400
  162. FINE        EQU    $800
  163.  
  164. ; PrintQuality
  165. DRAFT        EQU    $000
  166. LETTER        EQU    $100
  167.  
  168. ; PrintSpacing
  169. SIX_LPI        EQU    $000
  170. EIGHT_LPI    EQU    $200
  171.  
  172. ; Print Image
  173. IMAGE_POSITIVE    EQU    $00
  174. IMAGE_NEGATIVE    EQU    $01
  175.  
  176. ; PrintAspect
  177. ASPECT_HORIZ    EQU    $00
  178. ASPECT_VERT    EQU    $01
  179.  
  180. ; PrintShade
  181. SHADE_BW    EQU    $00
  182. SHADE_GREYSCALE    EQU    $01
  183. SHADE_COLOR    EQU    $02
  184.  
  185. ; PaperSize
  186. US_LETTER    EQU    $00
  187. US_LEGAL    EQU    $10
  188. N_TRACTOR    EQU    $20
  189. W_TRACTOR    EQU    $30
  190. CUSTOM        EQU    $40
  191.  
  192. ; PrinterType
  193. CUSTOM_NAME    EQU    $00
  194. ALPHA_P_101    EQU    $01
  195. BROTHER_15XL    EQU    $02
  196. CBM_MPS1000    EQU    $03
  197. DIAB_630    EQU    $04
  198. DIAB_ADV_D25    EQU    $05
  199. DIAB_C_150    EQU    $06
  200. EPSON        EQU    $07
  201. EPSON_JX_80    EQU    $08
  202. OKIMATE_20    EQU    $09
  203. QUME_LP_20    EQU    $0A
  204. ; new printer entries, 3 October 1985
  205. HP_LASERJET    EQU    $0B
  206. HP_LASERJET_PLUS EQU    $0C
  207.  
  208.  
  209. ; Serial Input Buffer Sizes
  210. SBUF_512        EQU     $00
  211. SBUF_1024       EQU     $01
  212. SBUF_2048       EQU     $02
  213. SBUF_4096       EQU     $03
  214. SBUF_8000       EQU     $04
  215. SBUF_16000      EQU     $05
  216.  
  217. ; Serial Bit Masks
  218. SREAD_BITS    EQU    $F0    ; pf_SerRWBits
  219. SWRITE_BITS    EQU    $0F
  220.  
  221. SSTOP_BITS    EQU    $F0    ; pf_SerStopBuf
  222. SBUFSIZE_BITS    EQU    $0F
  223.  
  224. SPARITY_BITS    EQU    $F0    ; pf_SerParShk
  225. SHSHAKE_BITS    EQU    $0F
  226.  
  227. ; Serial Parity (high nibble, but here shifted right, as by C-macro SPARNUM)
  228. SPARITY_NONE    EQU     $00
  229. SPARITY_EVEN    EQU     $01
  230. SPARITY_ODD     EQU     $02
  231.  
  232. ; Serial Handshake Mode (low nibble, mask by SHSHAKE_BITS)
  233. SHSHAKE_XON     EQU     $00
  234. SHSHAKE_RTS     EQU     $01
  235. SHSHAKE_NONE    EQU     $02
  236.  
  237. ; new defines for PrintFlags
  238. CORRECT_RED         EQU $0001    ; color correct red shades
  239. CORRECT_GREEN       EQU $0002    ; color correct green shades 
  240. CORRECT_BLUE        EQU $0004    ; color correct blue shades
  241.  
  242. CENTER_IMAGE        EQU $0008      ; center image on paper
  243.  
  244. IGNORE_DIMENSIONS   EQU $0000    ; ignore max width/height settings
  245. BOUNDED_DIMENSIONS  EQU $0010    ; use max width/height as boundaries
  246. ABSOLUTE_DIMENSIONS EQU $0020    ; use max width/height as absolutes
  247. PIXEL_DIMENSIONS    EQU $0040    ; use max width/height as prt pixels
  248. MULTIPLY_DIMENSIONS EQU $0080    ; use max width/height as multipliers
  249.  
  250. INTEGER_SCALING     EQU $0100    ; force integer scaling
  251.  
  252. ORDERED_DITHERING   EQU $0000    ; ordered dithering
  253. HALFTONE_DITHERING  EQU $0200    ; halftone dithering
  254. FLOYD_DITHERING     EQU $0400    ; floyd-steinberg dithering
  255.  
  256. ANTI_ALIAS          EQU $0800    ; anti-alias image
  257. GREY_SCALE2         EQU $1000    ; for use with hi-res monitor
  258.  
  259. CORRECT_RGB_MASK    EQU (CORRECT_RED+CORRECT_GREEN+CORRECT_BLUE)
  260. DIMENSIONS_MASK     EQU (BOUNDED_DIMENSIONS+ABSOLUTE_DIMENSIONS+PIXEL_DIMENSIONS+MULTIPLY_DIMENSIONS)
  261. DITHERING_MASK      EQU (HALFTONE_DITHERING+FLOYD_DITHERING)
  262.  
  263.     ENDC
  264.